bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Thu, 7 Sep 2023 22:41:35 +0000 (23:41 +0100)
committerGianfranco Costamagna <locutusofborg@debian.org>
Thu, 7 Sep 2023 22:41:35 +0000 (23:41 +0100)
commit2824ff307a357f269c76c4b67455e8f0c80af56d
tree6b37c383c5bc28bdd11b43bd9f0061fd913da3a7
parent20f70cc2797ccc88732d0806ae3d68fe98eb242e
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h